home *** CD-ROM | disk | FTP | other *** search
/ Apple Developer Connection Student Program / ADC Tools Sampler CD Disk 3 1999.iso / Documentation / Books / Learn Java on the Macintosh / Learn Java Projects / 10.01 - triangle / TriangleApplet.java < prev    next >
Text File  |  1996-04-22  |  1KB  |  64 lines

  1. /* -------------------------------------------------------------
  2. This applet shows how overriding a method can change its 
  3. behavior. It also shows how to invoke the behavior that's
  4. defined in the superclass for an object.
  5.  
  6. Java's classes: Applet    (applet)
  7.                 System    (lang)
  8.  
  9. Custom classes: TriangleApplet
  10.                 Triangle
  11.  
  12. ------------------------------------------------------------- */
  13.  
  14. public class TriangleApplet extends java.applet.Applet {
  15.  
  16.    public void init() {
  17.    
  18.       Triangle t1 = new Triangle();
  19.       t1.base = 10;
  20.       t1.height = 20;
  21.    
  22.       Triangle t2 = new Triangle();
  23.       t2.base = 10;
  24.       t2.height = 20;
  25.    
  26.       Triangle t3 = new Triangle();
  27.       t3.base = 12;
  28.       t3.height = 52;
  29.  
  30.       System.out.println("The triangles say:");
  31.       System.out.println("t1 == t2? " + t1.equals(t2));
  32.       System.out.println("t1 == t3? " + t1.equals(t3));
  33.       
  34.       System.out.println("The objects say:");
  35.       System.out.println("t1 == t2? " + t1.objectEquals(t2));
  36.       System.out.println("t1 == t3? " + t1.objectEquals(t3));
  37.       
  38.    }
  39.  
  40. }
  41.  
  42.  
  43. class Triangle {
  44.    int base;
  45.    int height;
  46.    
  47.    public boolean equals(Object obj) {
  48.       Triangle t;
  49.    
  50.       if (obj instanceof Triangle) {  
  51.        
  52.          t = (Triangle)obj;    
  53.          if (t.base == base && t.height == height)
  54.              return true;       
  55.        }    
  56.        
  57.        return false;
  58.    }
  59.  
  60.   boolean objectEquals(Object obj) {
  61.       return super.equals(obj);   
  62.    }
  63.  
  64. }